package com.hereway.core.context;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * 分页模型
 * 
 */
public class PagerModel<T> implements Serializable {

	private static final long serialVersionUID = 8614168295603432212L;

	// 当前页序号
	private int pageOffset = 0;

	// 页面显示数量
	private int pageSize = 10;

	// 排序字段
	private String orderFields = "";

	// 页面数据
	private List<T> dataList = new ArrayList<T>();

	// 总记录
	private int total;

	// 查询偏移量
	private int offset;

	/**
	 * 获得每页的记录数量,默认为10.
	 * 
	 * @return
	 */
	public int getPageSize() {
		return pageSize;
	}

	/**
	 * 设置每页的记录数量, 低于1时自动调整为10.
	 * 
	 * @param pageSiz
	 */
	public void setPageSize(int pageSize) {
		this.pageSize = pageSize;
		if (pageSize < 1) {
			this.pageSize = 10;
		}
	}

	/**
	 * 获取页面一页显示的数据
	 * 
	 * @param
	 * @return
	 */
	public List<T> getDataList() {
		return dataList;
	}

	/**
	 * 设置一页显示的数据
	 * 
	 * @param
	 * @return
	 */
	public void setDataList(List<T> data) {
		this.dataList = data;
	}

	/**
	 * 
	 * 获取总数量
	 * 
	 * @param
	 * @return
	 */
	public int getTotal() {
		return total;
	}

	/**
	 * 设置总数量
	 * 
	 * @param
	 * @return
	 */
	public void setTotal(int total) {
		this.total = total;
	}

	public int getOffset() {
		return offset;
	}

	public void setOffset(int offset) {
		this.offset = offset;
	}

	public int getPageOffset() {
		return pageOffset;
	}

	public void setPageOffset(int pageOffset) {
		this.pageOffset = pageOffset;
	}

	public String getOrderFields() {
		return orderFields;
	}

	public void setOrderFields(String orderFields) {
		this.orderFields = orderFields;
	}
}